package com.ujoku.service;

import com.labillusion.core.database.base.mybatis.service.base.BaseService;
import com.ujoku.domain.Member;

import javax.servlet.http.HttpServletRequest;
import java.util.Date;
import java.util.List;
import java.util.Map;

/**
 * Created by Administrator on 14-10-19.
 */
public interface MemberService<T> extends BaseService<T> {
     T selectByUserName(String userName);

     T selectByWxId(String wxId, String type);

     int addFriend(Integer memberId, Integer friendId);

     int removeFriend(Integer memberId, Integer friendId);

     List<Member> getMyFriendList(Map<String, Object> query);

     int getMyFriendCount(Integer memberId);

     void setMemberPortrait(Member member, HttpServletRequest request);

     String getMemberPortrait(boolean portrait, int memberId, Date portraitUpdateTime);

     int getUnreadCountsById(Member member);

     void setLevelName(Member member);

     int isFriendShip(Integer memberId,Integer friendId);

     int updateStatus(Member member);
}
